package com.gjxx.common.tcp;

/**
 * 终端音视频参数
 */
public class VideoAttrMsg extends PackageData{
	/**
	 * 输入音频编码方式
	 * byte[0]
	 */
	private int inputEncoding;
	/**
	 * 输入音频声道数
	 * byte[1]
	 */
	private int inputChannel;
	/**
	 * 输入音频采样率
	 * byte[2]
	 */
	private int inputRate;
	/**
	 * 输入音频采样位数
	 * byte[3]
	 */
	private int inputBits;
	/**
	 * 音频帧长度
	 * byte[4]
	 */
	private int frameLength;
	/**
	 * 是否支持音频输出：0不支持，1支持
	 * byte[5]
	 */
	private int isEnableOutput;
	/**
	 * 视频编码方式
	 * byte[6]
	 */
	private int videoEncoding;
	/**
	 * 最大音频通道数
	 * byte[7]
	 */
	private int maxAudioChannels;
	/**
	 * 最大视频通道数
	 * byte[8]
	 */
	private int maxVideoChannels;

	public VideoAttrMsg() {}

	public VideoAttrMsg(PackageData packageData) {
		this();
		this.channel = packageData.getChannel();
		this.checkSum = packageData.getCheckSum();
		this.calculatedCheckSum = packageData.getCalculatedCheckSum();
		this.msgBodyBytes = packageData.getMsgBodyBytes();
		this.msgHeader = packageData.getMsgHeader();
	}

	public int getInputEncoding() {
		return inputEncoding;
	}

	public void setInputEncoding(int inputEncoding) {
		this.inputEncoding = inputEncoding;
	}

	public int getInputChannel() {
		return inputChannel;
	}

	public void setInputChannel(int inputChannel) {
		this.inputChannel = inputChannel;
	}

	public int getInputRate() {
		return inputRate;
	}

	public void setInputRate(int inputRate) {
		this.inputRate = inputRate;
	}

	public int getInputBits() {
		return inputBits;
	}

	public void setInputBits(int inputBits) {
		this.inputBits = inputBits;
	}

	public int getFrameLength() {
		return frameLength;
	}

	public void setFrameLength(int frameLength) {
		this.frameLength = frameLength;
	}

	public int getIsEnableOutput() {
		return isEnableOutput;
	}

	public void setIsEnableOutput(int isEnableOutput) {
		this.isEnableOutput = isEnableOutput;
	}

	public int getVideoEncoding() {
		return videoEncoding;
	}

	public void setVideoEncoding(int videoEncoding) {
		this.videoEncoding = videoEncoding;
	}

	public int getMaxAudioChannels() {
		return maxAudioChannels;
	}

	public void setMaxAudioChannels(int maxAudioChannels) {
		this.maxAudioChannels = maxAudioChannels;
	}

	public int getMaxVideoChannels() {
		return maxVideoChannels;
	}

	public void setMaxVideoChannels(int maxVideoChannels) {
		this.maxVideoChannels = maxVideoChannels;
	}

	@Override
	public String toString() {
		return "VideoAttrMsg{" +
				"inputEncoding=" + inputEncoding +
				", inputChannel=" + inputChannel +
				", inputRate=" + inputRate +
				", inputBits=" + inputBits +
				", frameLength=" + frameLength +
				", isEnableOutput=" + isEnableOutput +
				", videoEncoding=" + videoEncoding +
				", maxAudioChannels=" + maxAudioChannels +
				", maxVideoChannels=" + maxVideoChannels +
				'}';
	}
}
